package com.sweet.thread;

public class TestThreadStop implements Runnable {

    // 1.设置标识位
    private boolean flag = true;
    @Override
    public void run() {
        int i = 0;
        while(flag) {
            System.out.println("run....Thread" + i++);
        }
    }

    // 2.设置一个公开的方法停止线程（转换标识位）
    public void stop () {
        this.flag = false;
    }

    public static void main(String[] args) {
        TestThreadStop st = new TestThreadStop();
        new Thread(st).start();
        for (int i = 0; i < 10000; i++) {
            // 调用stop方法切换标识位 让线程自然停止
            System.out.println("Main: " + i);
            if(i == 900) {
                st.stop();
                System.err.println("该线程停止了～");
            }
        }
    }
}
